YOUR FIRST METEOR APPLICATION翻译(四)——数据库(操作数据)

插入数据

当我们想要插入数据到集合里面,我们有4个方法。从Javascript控制台插入、通过终端插入、通过Javascript文件和表格接口。在此书里面会介绍第一种方法也是最简单的一种方法,就是从Javascript控制台里插入。

在控制台里面我们输入下面的代码:

PlayersList.insert();

在Mongodb里面数据的储存是以JSON的形式储存的,所以当我们插入数据的时候应该以如下的方式:

PlayersList.insert({ name: "David", score: 0 });

查找数据

当我们要查找数据的时候我们可以通过以下的js代码实现数据的查找:

PlayersList.find();

然而,使用find查找出来的数据并没有经过排版,如果你想查找出来的数据更具格式化可以通过以下代码来实现:

PlayersList.find().fetch();

可能又会有人问,那如果要查找特定的数据的时候我们应该怎样做呢?以下的代码就是通过姓名来查找的方式:

PlayersList.find({ name: "David" }).fetch();

当然,find()其实还有很多详细的功能,例如:find({}, {sort: {score: -1, name: 1}})这些如果以后我还会翻译更深入的文章应该就会讲到。

可能有时候我们也需要知道我们查找出来了多少条数据,这时候我们就可以用count()来达到目的了,代码的实现如下:

PlayersList.find().count();

另外,Meteor.js也提供了findOne()函数让我们可以只查找符合条件的第一条信息,代码如下:

PlayersList.findOne();

更新数据

与其他的sql一样Mongodb里也有更新数据的方法,而Meteor.js里面就提供了update()函数,下面是一个示例代码:

1
2
3
4
5
PlayersList.update({
title:{$regex:/first/}
},{
$set:{content:"Tomorrow will be a great day."}
});

上面的代码是查找PlayersList这个集合中title包含了“first”的记录,并将它的content更新为

“Tomorrow will be a great day.”。除了$set之外,还有$inc可以让一些数值型的数据实现递增或者递减,例如:

$inc:{num:-5}//这里假设存在num这个数据并且为数值类型

删除数据

与其他的sql一样Mongodb里也有更新移除的方法,而Meteor.js里面就提供了remove()函数,下面是一个示例代码:

1
2
3
PlayersList.remove({
'name':'ecJon'
});

上面的代码就是删除name为ecJon的记录(一个不小心把自己给删除了 T_T!!)

删除数据

与其他的sql一样Mongodb里也有更新移除的方法,而Meteor.js里面就提供了remove()函数,下面是一个示例代码:

PlayersList.remove({ 'name':'ecJon' });

上面的代码就是删除name为ecJon的记录(一个不小心把自己给删除了 T_T!!)

感谢meteortips & David以上内容根据英文版的YOUR FIRST METEOR APPLICATION粗略翻译而来,在未经我本人允许的情况下请勿转载,违者本人保留法律追究的权利。